const PrivateRoute = ({ allowedRoles, element }) => {
  const location = useLocation();
  const userData = JSON.parse(localStorage.getItem('userData')); // 从 localStorage 获取用户数据

  // 检查用户是否有允许访问该页面的角色
  if (userData && allowedRoles.includes(userData.role)) {
    return element;
  } else {
    // 如果用户角色不符，则重定向到相应的页面
    const redirectPath = userData?.role === 'admin' 
      ? '/admin' 
      : userData?.role === 'merchant' 
      ? '/merchant' 
      : '/home';
    return <Navigate to={redirectPath} state={{ from: location }} replace />;
  }
};
